package com.rzjm.exercise.sys.core.dict.service;

import com.rzjm.exercise.common.base.service.BaseService;
import com.rzjm.exercise.sys.core.dict.domain.DictDO;
import com.rzjm.exercise.sys.system.user.domain.UserDO;
import org.springframework.cache.annotation.Cacheable;

import java.util.List;

/**
 * 字典表
 *
 * @author chglee
 * @email 1992lcg@163.com
 * @date 2017-09-29 18:28:07
 */
public interface DictService extends BaseService<DictDO> {
	String cachePrefix = "dict-code";

	List<DictDO> listType();

	/**
	 * 获取爱好列表
	 * @return
     * @param userDO
	 */
	List<DictDO> getHobbyList(UserDO userDO);

	/**
	 * 获取性别列表
 	 * @return
	 */
	List<DictDO> getSexList();

	/**
	 * 根据type获取数据
	 * @param type
	 * @return
	 */
	List<DictDO> listByType(String type);


	@Cacheable(value = cachePrefix, key = "#type")
	List<DictDO> findByType(String type);

	DictDO getMaxValueByType(String points_type, Integer shopId);

	DictDO getMaxValueByType(String points_type);
}
